<?php
    /*
Autor: Jonathan Vindas Abarca
Fecha: 13/07/2012
Descripción: Este archivo contiene la declaración de la clase controladora de embalajes.
Bitacora de modificaciones:
<
    Autor: 
    Fecha: 
    Descripción: 
>
*/                   
    function agregarEmbalajes() 
    {
        require_once '../controladores/dataControlador.php';
        require '../modelos/embalajesModelo.php';
        $bandera="";
        try 
        {                   
            if(encontrarEmbalajeDuplicado($_POST['txtTipoEmbalaje'])==false)
            {
                if ($_POST['hddAccion']=='modificarEmbalaje')
                {                    
                        modificarEmbalaje($_POST['hddCodEmbalaje'],$_POST['txtTipoEmbalaje']);                                        
                        $bandera='Modifica';                    
                }
                else
                {                    
                        agregarEmbalaje($_POST['hddCodEmbalaje'],$_POST['txtTipoEmbalaje']);                   
                        $bandera='Agrega';                                                  
                }
            }
            else
            {
                $bandera='Embalaje Duplicado';
            }         
            direccionarAgregarEmbalajes();
            mensajeConfirmacionEmbalajes($bandera);                    
        }
        catch (Exception $e) 
        {
            echo 'Excepción capturada: ',  $e->getMessage(), "\n";
        }        
    }
    
    function direccionarAgregarEmbalajes()
    {
        /* Este metodo se modifico para modulo de seguridad*/
        require_once '../modelos/embalajesModelo.php';
        require_once 'dataControlador.php';        
        if(validarPermisos('agregarEmbalaje'))
        {
            $accion = 'agregarEmbalajes';
            require 'GuiasEnvio/agregarEmbalaje.php';
        }        
        else
        {
            $items = buscarTodosLosEmbalajes();
            $total_registros =sizeof($items);                    
            require 'GuiasEnvio/listarEmbalaje.php';            
            mensajeConfirmacionEmbalajes('SinPermisos'); 
        }        
    }    

    function eliminarEmbalajes() 
    {        
        /* Este metodo se modifico para modulo de seguridad*/
        require '../modelos/embalajesModelo.php';       
        require_once 'dataControlador.php';      
        if( isset($_GET['txtCodEmbalaje']))
        {   
            if (buscarEmbalajeXPrecio($_GET['txtCodEmbalaje'])==true)
            {          
                $bandera='ExistePrecio';
            } 
            if (buscarEmbalajeXLinea($_GET['txtCodEmbalaje'])==true)
            {           
                $bandera='ExisteLinea';
            }             
            if (buscarEmbalajeXLinea($_GET['txtCodEmbalaje'])==false && buscarEmbalajeXPrecio($_GET['txtCodEmbalaje'])==false)
            {
                if(validarPermisos('eliminarEmbalajeControlador'))
                {
                    eliminarEmbalajeControlador($_GET['txtCodEmbalaje']);
                    $bandera='Elimina';                              
                }
                else
                {
                    $bandera='SinPermisos';                      
                }                
            }        
        }
        listarEmbalajes();
        mensajeConfirmacionEmbalajes($bandera);
    }
    
    function listarEmbalajes() 
    {
        /* Este metodo se modifico para modulo de seguridad*/
        require_once('FirePHPCore/FirePHP.class.php');
        $firephp = FirePHP::getInstance(true);
        $firephp->log('listar Embalaje','listar Embalaje');        
        require_once '../modelos/embalajesModelo.php';
        require_once 'dataControlador.php';
        if(validarPermisos('buscarTodosLosEmbalajes'))
        {
            $items = buscarTodosLosEmbalajes();
            $total_registros =sizeof($items);                    
            require 'GuiasEnvio/listarEmbalaje.php';            
        }
        else
        {            
            $items = null;                        
            require 'GuiasEnvio/listarEmbalaje.php';           
            mensajeConfirmacionEmbalajes('SinPermisos'); 
        }
    }
    
    function mensajeConfirmacionEmbalajes($bandera) 
    {                
        try 
        {
            if($bandera=='Agrega')
            {
                ?>
                <script type="text/javascript">
                $().message("Se agrego el Embalaje Satisfactoriamente.");
                e.preventDefault();
                $().message($("#message").val());
                </script>
                <?php
            }
            elseif ($bandera=='Modifica') 
            {
                ?>
                <script type="text/javascript">
                $().message("Se modifico el Embalaje Satisfactoriamente.");
                e.preventDefault();
                $().message($("#message").val());
                </script>
                <?php
            }
            elseif ($bandera=='Elimina') 
            {        
                ?>
                <script type="text/javascript">                   
                $().message("Se elimino el Embalaje Satisfactoriamente.");
                e.preventDefault();
                $().message($("#message").val());
                </script>
                <?php
            }
            elseif ($bandera=='ExisteLinea') 
            {        
                ?>
                <script type="text/javascript">
                $().message("No se puede Borrar, existen Lineas dependientes al Embalaje.");
                e.preventDefault();
                $().message($("#message").val());
                </script>
                <?php
            }
            elseif ($bandera=='ExistePrecio') 
            {
                ?>
                <script type="text/javascript">
                $().message("No se puede Borrar, existen precios dependientes al Embalaje.");
                e.preventDefault();
                $().message($("#message").val());
                </script>
                <?php                
            }
            elseif ($bandera=='Embalaje Duplicado') 
            {
                ?>
                <script type="text/javascript">
                $().message("Hay otro registro que tiene este mismo tipo de embalaje");
                e.preventDefault();
                $().message($("#message").val());
                </script>
                <?php
            }
            elseif ($bandera=='SinPermisos') 
            {
                ?>
                <script type="text/javascript">
                $().message("Su usuario no posee permisos para esta acci&oacute;n.");
                e.preventDefault();
                $().message($("#message").val());
                </script>
                <?php
            }
        }
        catch (Exception $e) 
        {
        echo 'Excepción capturada: ',  $e->getMessage(), "\n";
        }
    }
    
    function modificarEmbalajes() 
    {
        /* Este metodo se modifico para modulo de seguridad*/
        require_once '../modelos/embalajesModelo.php';
        require_once '../controladores/dataControlador.php';        
        if(validarPermisos('modificarEmbalaje'))
        {
            $codembalaje=  $_POST['hddCodEmbalaje'];
            $tipoembalaje= $_POST['hddTipoEmbalaje'];
            $accion = 'modificarEmbalaje';
            require 'GuiasEnvio/agregarEmbalaje.php';
        }
        else
        {                                                
            $items = buscarTodosLosEmbalajes();
            $total_registros =sizeof($items);                    
            require 'GuiasEnvio/listarEmbalaje.php';            
            mensajeConfirmacionEmbalajes('SinPermisos');                  
        }                 
     }         

    function paginaPrincipal()
    {     
        require '../vistas/portada.php';
    } 
    
    function validarIdEmabalaje() 
    {
       $id = encontrarEmbalaje($_POST['txtCodEmbalaje']);
       return $id;
    }
?>